AWS AppConfig
💡 Definition
AWS AppConfig is a feature of AWS Systems Manager that helps you create, manage, and quickly deploy application configurations. It helps you separate configuration from code, allowing you to update configuration without deploying new code versions or restarting applications.
🔑 Key Concepts
- Configuration Management: Stores application configurations and feature flags centrally.
- Controlled Deployment: Provides a robust deployment process for configurations, including validation, phased deployments, and automatic rollback capabilities.
- Separation of Concerns: Decouples configuration data from application code, making updates safer and faster.
- Integration: Works with Lambda functions, containers, EC2 instances, and on-premises applications.
⚙️ How it Works
- Define Configuration: You create configuration profiles in AppConfig, specifying the configuration data (e.g., JSON, YAML, plain text).
- Validate: AppConfig can validate configurations against a schema before deployment.
- Deploy: You initiate a deployment, choosing a deployment strategy (e.g., all-at-once, linear, canary) to roll out the new configuration.
- Retrieve: Applications retrieve the latest configuration at runtime using the AppConfig API or SDK.
🎯 Use Cases
- Feature Flags: Turning features on or off without code deployment.
- Application Settings: Updating application parameters (e.g., database connection strings, logging levels).
- Safe Deployments: Minimizing risk during configuration changes with built-in validation and rollback.
- A/B Testing: Dynamically serving different configurations to user segments.
💰 Pricing Model
- Configuration Data: Charged per GB of configuration data stored per month.
- Retrieval Requests: Charged per 1 million configuration retrieval requests.
- Deployment Operations: Charged per deployment initiated.
📝 Exam Tips (CLF-C02)
- Keywords: "Application configuration deployment", "Feature flags", "Controlled deployment", "Separate config from code".
- Think of it for managing and deploying application configurations safely and quickly, especially for microservices and serverless applications.
- Complements Parameter Store within AWS Systems Manager for secret and configuration storage, adding robust deployment capabilities.
See Also: * AWS Systems Manager * Lambda * EC2